// function a(){
//   console.log('a');
// }

// function b(){
//   console.log('b');
// }

// let p = Promise.resolve('123')

// console.log(p);

// console.log(res)
// console.log();
// Function.prototype.myCall = function (target, ...args) {
//   let context = target || window
//   let uniqueKey = Symbol()
//   context[uniqueKey] = this
//   let result = context[uniqueKey](...args)
//   Reflect.deleteProperty(context, uniqueKey)
//   return result
// }

// Function.prototype.myApply = function(target,args){
//   let context = target || window
//   let uniqueKey = Symbol()
//   context[uniqueKey]=this
//   let result = context[uniqueKey](...args)
//   delete context[uniqueKey]
//   return result
// }
// Function.prototype.myBind = function(target,...outParams){
//   target = target || {}
//   const uniqueKey = Symbol()
//   target[uniqueKey] = this
//   return function(...innerParams){
//    let result =  target[uniqueKey](...outParams,...innerParams)
//    return result
//   }
// }


// function red() {
// 	console.log('red');
// }
// function green() {
// 	console.log('green');
// }
// function yellow() {
// 	console.log('yellow');
// }
// function index() {
// 	setTimeout(function() {
// 		red();
// 		setTimeout(function() {
// 			green();
// 			setTimeout(function() {
// 				yellow();
// 				setTimeout(function() {
// 					index();
// 				},0);
// 			},3000);
// 		},2000);
// 	},1000);
// }
// index();
// let arr = []
// // while(arr){
// //   console.log(1);
// // }

// if(arr){
//   console.log(2);
// }

// if(arr==true){
//   console.log(3);
// }

let str = 'asd vv ss'
let re = /(\w)/g
str.replace(re,function(match){
  console.log(match);
})